const path = require('path')
function resolve(dir) {
  return path.join(__dirname, dir)
}

var fs = require('fs');
var configDataCode = fs.readFileSync(resolve('./public/config.js'),'utf8')
var $GlobalConfig = eval(configDataCode)(process.env.NODE_ENV)

var devServerConfig = {
    host: 'localhost',
    port: 8080,
    proxy: {}
}
devServerConfig.proxy[$GlobalConfig.devServerProxyPattern] = {
    target: $GlobalConfig.serverUrl,
    ws: true, // 是否启用websockets
    secure:false, // 使用的是http协议则设置为false，https协议则设置为true
    //开启代理：在本地会创建一个虚拟服务端，然后发送请求的数据，并同时接收请求的数据，这样客户端端和服务端进行数据的交互就不会有跨域问题
    changOrigin: true,
}
module.exports = {
    outputDir: 'dist',
    publicPath: '/',
    devServer: devServerConfig,
    configureWebpack: config => {
        console.log('------------------------------------------配置开始------------------------------------------')
        //webpack基础配置
        const webpackConfig = {

        }
        //处理不同环境的webpack配置差异
        if (process.env.NODE_ENV === 'production') {//生产环境

        } else if(process.env.NODE_ENV === 'development'){//开发环境

        }
        console.log('------------------------------------------配置结束------------------------------------------')
        return webpackConfig
    },
    chainWebpack:(config)=>{
        //常用别名配置
        config.resolve.alias
        .set('@',resolve('./src'))
        .set('@components',resolve('./src/components'))
        .set('@views',resolve('./src/views'))
        //set第一个参数：设置的别名，第二个参数：设置的路径
    }
}